package jdx_01_什么是线程;

import jdx_00_utils.JdxUtils;

public class WhatIsTheThread {

    //编写一个类继承线程,重写run方法
    private static class MyThread extends Thread{
        @Override
        public void run() {
            for (int i = 0; i < 10; i++) {
                JdxUtils.sleepMicroseconds(1); //沉睡1微秒
                System.out.println("MyThread");
            }
        }
    }
    public static void showMain(){
        for (int i = 0; i < 10; i++) {
            JdxUtils.sleepMicroseconds(1); //沉睡1微秒
            System.out.println("main");
        }
    }

    //第一种调用线程的方法
    public static void callMethod_1(){
        new MyThread().run();
        showMain();
        /*
        [运行的结果]:先打印10个MyThread,然后再打印10个main
         */
    }

    //第二种调用线程的方法
    public static void callMethod_2(){
        new MyThread().start();
        showMain();
        /*
        [运行结果]:main和MyThread交替打印
         */
    }
    /*
    总之，线程其实通俗点理解，就是一个程序里面不同的执行路径
     */
    public static void main(String[] args) {
        callMethod_1();
//        callMethod_2();
    }
}
